package com.parkingspace.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.parkingspace.entity.ParkingInformation;

import java.util.Map;

/**
 * <p>
 * 车位信息表 服务类
 * </p>
 *
 * @author Gapper
 * @since 2021-05-24
 */
public interface IParkingInformationService extends IService<ParkingInformation> {

	/**
	 * 查询某用户所对应的所有车位状态,也可以不传入用户ID对应所有的车位,还可以条件查询
	 * @param token 传入令牌
	 * @param current 当前第几页
	 * @param size 每页显示条数
	 * @param propertyId 传入物业ID
	 * @param parkingInformation 车位查询条件封装实体类
	 * @return 返回Map
	 * @throws Exception
	 */
	Map<Object, Object> findAllIn (String token, long current, long size, Long propertyId, ParkingInformation parkingInformation) throws Exception;

	/**
	 * 上架车位功能
	 * @param parkingId 传入车位ID
	 * @param status 传入上架的状态码, （车位状态）	0 停用	1 个人私有	2 待出租	3 已出租	4 查封
	 * @param rent 传入上架价格
	 * @return 返回Boolean
	 * @throws Exception
	 */
	Boolean shelfSpace (String token, Long parkingId, Integer status, double rent) throws Exception;

	/**
	 * 下架车位功能
	 * @param parkingId 传入车位ID
	 * @return 返回Boolean
	 */
	Boolean shelvesParking (Long parkingId) throws Exception;

}
